home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / sys / amiga / misc-part2 / 11621 < prev    next >
Encoding:
Text File  |  1996-08-05  |  37.5 KB  |  920 lines

  1. Path: informatik.tu-muenchen.de!kellerer
  2. From: kellerer@informatik.tu-muenchen.de (Ignaz Kellerer)
  3. Newsgroups: comp.sys.amiga.introduction,comp.sys.amiga.misc,comp.sys.amiga.programmer,comp.answers,news.answers
  4. Subject: Amiga FAQ (Frequently asked questions) (Part 1 of 4)
  5. Supersedes: <AmigaFAQ-1-824230821@informatik.tu-muenchen.de>
  6. Followup-To: comp.sys.amiga.introduction
  7. Date: 9 Apr 1996 16:00:25 GMT
  8. Organization: InternetNews at TUM, Technical University of Munich, Germany
  9. Approved: news-answers-request@MIT.EDU
  10. Distribution: world
  11. Expires: Sunday, 12 May 96 18:00:24 MESZ
  12. Message-ID: <AmigaFAQ-1-829065624@informatik.tu-muenchen.de>
  13. Reply-To: kellerer@informatik.tu-muenchen.de (Ignaz Kellerer)
  14. NNTP-Posting-Host: hphalle3g.informatik.tu-muenchen.de
  15. Content-Type: text/plain; charset=ISO-8859-1
  16. Content-Transfer-Encoding: 8bit
  17. Summary: Frequently asked questions on the Amiga.
  18.          New users should read this!
  19. Originator: kellerer@hphalle3g.informatik.tu-muenchen.de
  20.  
  21. Posted-By: auto-faq 2.4
  22. Archive-name: amiga/introduction/part1
  23. Last-modified: Tuesday, 9. March 1996
  24. Posting-Frequency: ever fourth week
  25.  
  26.  
  27.       Frequently asked questions (FAQ) concerning the Amiga. [1/4]
  28.       ------------------------------------------------------------
  29.  
  30. Below you find a list of frequently asked questions. It should especially
  31. be for new users but perhaps experienced users may find something too.
  32. This is part 1, the second begins with chapter 4, the third with chapter 5,
  33. the fourth with chapter 7.
  34.  
  35. It is in Ascii format to be easily read by everyone. It is also available
  36. in AmigaGuide, Dvi and html (for WWW servers) format as part of the Amiga-FAQ
  37. archive. (File docs/misc/AmigaFAQ.lha on any Aminet site)
  38.  
  39. Please note the following:
  40.  
  41.   - Changes since the last posting are marked with a
  42.     !    changed this line/section, respectively
  43.     +    added this line
  44.     <    removed something before this line
  45.  
  46.   - An index is at the bottom of part 4. If this still doesn't help:
  47.     E-mail me, probably I can include an answer into the FAQ.
  48.  
  49.   - Suggestions, contributions, critics and beer bottles are very
  50.     welcome. :-) Send them to:
  51.  
  52.         Ignaz Kellerer
  53.         Georg-Habel-Str. 11
  54.       81241 Muenchen (Germany)
  55.         Tel. (+49) 089 / 885147
  56.  
  57.         Internet: kellerer@informatik.tu-muenchen.de
  58.  
  59. ===========================(Cut here)=========================================
  60.  
  61.   Amiga-FAQ
  62.   *********
  63.   
  64.      This document lists some frequently asked questions and tries to
  65.   give answers.  Its intention is to help new users and to reduce the
  66.   amount of news that most experienced users don't like to read anymore.
  67.   
  68.      Please notice that there are many questions that aren't answered yet,
  69.   even more: Whole sections that remain empty! I feel that I cannot give
  70.   satisfying answers. So it's your turn: Fill the gaps and tell me what i
  71.   should include into this document!
  72.   
  73.  
  74.   Disclaimer
  75.  
  76.   1 CPU, Custom chips, RAM and other stuff
  77.     1 What are 68EC020, 68EC030 and 68LC040?
  78.     2 What's an FPU?
  79.     3 Can I use a 3.5' HD in my A1200?
  80.  
  81.   2 The Operating System
  82.     1 Can I use another Kickstart than the builtin?
  83.     2 The Graphical User Interface
  84.     3 What is MUI?
  85.       1 Icon collections and Backgrounds
  86.     4 What is the Amiga equivalent of . (Current directory)?
  87.     5 The PIPE: queue-handler
  88.       1 Using PIPE: in a standard AmigaShell environment
  89.       2 The Pipe command
  90.       3 Pipe command support in AmigaShell
  91.       4 Quick usage guide
  92.       5 Related things
  93.       6 Troubleshooting
  94.     6 ARexx, the program control language
  95.  
  96.   3 How about Graphics?
  97.     1 What are chunky and planar displays?
  98.     2 What is doublebuffering?
  99.     3 What monitors will work on my Amiga 1200/4000?
  100.     4 How do I switch between PAL and NTSC?
  101.  
  102.   4 Programming
  103.     1 What documentation do I need as an Amiga programmer?
  104.     2 What is CATS?
  105.     3 Where do I get the Amiga includes?
  106.     4 How do I become a developer?
  107.     5 What compilers (assemblers) are there?
  108.     6 Those never working Esc sequences!
  109.     7 Is it possible to use AmigaBasic on the A1200?
  110.     8 How do I localize my program?
  111.     9 How to obtain a pointer to a console's window
  112.     10 What are pragmas?
  113.     11 My Compiler/Linker is complaining about missing symbol xxx.
  114.     12 Where do I find the function xxx?
  115.     13 The GNU C compiler: general information and installation
  116.       1 Current Version
  117.       2 Requirements
  118.       3 Authors
  119.       4 Sources for Gcc
  120.       5 Inline Headers
  121.       6 Amiga Libraries
  122.       7 Installation
  123.       8 Compiling
  124.       9 How to get help
  125.  
  126.   5 Applications
  127.     1 Text Editors
  128.     2 What word processors are there?
  129.     3 Desktop Publishing
  130.     4 What is TeX and where can I get it?
  131.     5 Are there any Postscript interpreters?
  132.       1 Amiga Font Formats
  133.       2 Frequently Requested Amiga Fonts
  134.       3 Commercial Font Sources
  135.       4 Non-Latin fonts on the Amiga
  136.       5 Amiga Font Installation
  137.       6 Amiga Font Utilities
  138.       7 Making Outline Fonts
  139.       8 Problems and Possible Solutions
  140.     6 How to deal with Non-Latin texts?
  141.       1 Japanese editors and viewers
  142.       2 Chinese text viewers
  143.  
  144.   6 Connecting your Amiga to the world
  145.  
  146.   7 Emulators
  147.     1 Can I run Unix on my Amiga?
  148.     2 Is it possible to use the Amiga as X11 terminal?
  149.     3 Is there a way to start MS-Dos programs?
  150.     4 How to mount MsDos-formatted Syquests on Amiga
  151.  
  152.   8 Miscellaneous
  153.     1 Is there any unix version of LhA?
  154.     2 What are files ending with ...?
  155.     3 Is there a Stacker-like utility to pack my hard drive?
  156.     4 Where do I get Fish disk xxx?
  157.  
  158.   9 Where and how do I get software and other informations?
  159.     1 Files and databases on freely distributable software
  160.     2 A collection of tests
  161.     3 Getting files from a FTP server
  162.     4 Getting files from a Mail server
  163.     5 Getting files from a mailbox
  164.     6 The Fish PD series
  165.       1 The Amiga Library disks
  166.       2 The Fresh Fish CD-Roms
  167.     7 How do I Read and write MS-Dos disks?
  168.     8 How do I split large files?
  169.     9 Discussing things
  170.     10 Other FAQ's
  171.  
  172.   The Amiga-FAQ archive
  173.  
  174.   Contributions
  175.  
  176.   Credits
  177.  
  178.   Index
  179.  
  180.  
  181.  
  182.   Disclaimer
  183.   **********
  184.   
  185.      This document is
  186.   
  187.        Copyright (C)  Ignaz Kellerer
  188.                        Georg-Habel-Str. 11
  189.                  81241 Munich (Germany)
  190.                        Tel. (+49) 089 / 885147
  191.                        Internet: kellerer@informatik.tu-muenchen.de
  192.   
  193.      Permission is granted to make and distribute verbatim and modified
  194.   copies of this document following the terms of the "GNU General Public
  195.   License" provided the copyright notice and this permission notice are
  196.   preserved on all copies.
  197.   
  198.      The author gives *absolutely no* warranty that the answers given
  199.   here are correct or usable. Many of them were contributed by other users
  200.   and I cannot even make marginal checks. If you think that something
  201.   should be changed, please tell me. Suggestions, contributions, new
  202.   answers, critics, flames (oh, how I like this `nil:' :-) are rather
  203.   welcome.  See Contributions.
  204.   
  205.   1 CPU, Custom chips, RAM and other stuff
  206.   ****************************************
  207.   
  208.      This chapter contains questions concerning the Amiga-Hardware.
  209.   
  210.   1.1 What are 68EC020, 68EC030 and 68LC040?
  211.   ==========================================
  212.   
  213.      Motorola, the company producing the 680x0 family offers crippled
  214.   versions of their processors. They are a little bit cheaper than the
  215.   originals, that's why Commodore decided to build the 68EC020 into the
  216.   A1200 and the 68EC030 into the A4000/030.
  217.   
  218.      The difference between the 68020 and the 68EC020 is that the latter
  219.   can address just 16Mb of memory. That's why the A1200 cannot have more
  220.   that 10 Mb RAM. In most cases you will not notice the difference.
  221.   
  222.      This is not the case for the 68EC030: Many owners will notice that
  223.   the 68030 has an MMU and the 68EC030 doesn't have. There are some
  224.   important programs depending on an MMU, for example Enforcer (a
  225.   debugging utility), GigaMem (a program to emulate virtual memory) or
  226.   all current Unix versions (see Unix). Other Amigas than the A4000 and
  227.   the A3000 need an additional processor card using a 68030 or 68040 or
  228.   68060 to run these.
  229.   
  230.      Finally the 68LC040 is a 68040 without FPU. See FPU.
  231.   
  232.   1.2 What's an FPU?
  233.   ==================
  234.   
  235.      The first 680x0 processors (upto 68030) could process integers only.
  236.   Floating point operations had to be emulated by the software. An FPU is
  237.   a chip (or part of a chip) that can process floating point operations, a
  238.   mathematical coprocessor.
  239.   
  240.      One separates three FPU types on the Amiga: The 68881, 68882 and the
  241.   68040's internal FPU. The 68882 is up to 1.5 times faster than the
  242.   68881, because it is splitted in two parts: A conversion unit (the
  243.   FPU's are using an 80 bit format internally) and the arithmetic unit.
  244.   The 68040's internal FPU adds a pipeline, but misses the trigonometric
  245.   instructions of the others. These are still emulated by the software,
  246.   68040.library for example.
  247.   
  248.      Special programs (Raytracing, DTP, Mathematics, TeX) are offered in a
  249.   special coprocessor version which are up to 50 times faster than the
  250.   original versions.
  251.   
  252.      Michael Kaiser (kaiser@ira.uka.de)
  253.   
  254.   1.3 Can I use a 3.5' HD in my A1200?
  255.   ====================================
  256.   
  257.      Many people would prefer to use a 3.5" instead of the smaller 2.5"
  258.   drives as the former are much cheaper. This is possible, but you need a
  259.   special cable to connect the drive to your IDE controller. Additionally
  260.   you should put some isolating material between the drive and the main
  261.   board. Some people report termic problems but I did not notice anything.
  262.   
  263.      Some dealers offer a set which contains the cable, isolating material
  264.   and for about 20$. See the magazines for more information.
  265.   
  266.      Thomas Schuh (thomas@stepout.tynet.sub.org)
  267.   
  268.      If you are going to install an IDE-harddisk, regardless if 2.5" or
  269.   3.5", you should always consider that the it may not work flawlessly,
  270.   if the drive and ROM-version have not been tested and approved by
  271.   Commodore. Regarding the A1200, one should also remember that this
  272.   Amiga has not been designed to hold 3.5" harddisk drives. The 2.5"
  273.   drives, which are mainly thought for portable computers, may have some
  274.   advantages (for example in power consumption, heat emission or shock
  275.   resistance) that could pay off because of the small keyboard case of
  276.   the A1200 and the limited power supply. With the larger 3.5" drives,
  277.   ventilation inside the computer might also be disturbed. If it is
  278.   necessary to remove some shielding inside the A1200 to make the drive
  279.   fit inside, even radio interference may occur.
  280.   
  281.      To sum it up: if 3.5" harddisk drives could really be used in the
  282.   A1200 without any problems, you could be sure Commodore themselves
  283.   wouldn't have used the slightly more expensive 2.5" drives in the
  284.   A1200-HD.
  285.   
  286.   2 The Operating System
  287.   **********************
  288.   
  289.      This chapter handles questions concerning the operating system,
  290.   Kickstart as well as the Workbench.
  291.   
  292.   2.1 Can I use another Kickstart than the builtin?
  293.   =================================================
  294.   
  295.      First let's drop some words on the Kickstart's Copyright: This
  296.   belongs to Commodore, you *must not* use Kickstarts, without the right
  297.   to do it!  Especially it isn't allowed to make an image of anyone
  298.   else's Kickstart and run this on your own Amiga. (I even doubt that it
  299.   is allowed to do this on your own Amigas, if you have more than one.)
  300.   
  301.      But of course it is possible and allowed for some people, developers
  302.   for example.  There are two different ways, a hardware solution and a
  303.   software solution.  The former is to buy a card which can hold two or
  304.   more Kickstart ROMS and allows to select between when the System is
  305.   booting.
  306.   
  307.      The software solution needs a program (softkicker) and an image of
  308.   the ROM. The softkicker allocates RAM, loads the ROM image into the
  309.   allocated memory and reboots. Of course you have less RAM after the
  310.   Reboot: 256Kb when running Kickstart 1.2 or 1.3 and 512Kb for Kickstart
  311.   2.0 or higher.
  312.   
  313.      There are different Softkickers, some of them needing a MMU (see
  314.   68EC0xx). I recommend SKick 3.43 (Aminet, directory `util/boot')
  315.   because it doesn't need a MMU and supports many different Kickstarts.
  316.   It is rather easy to create the ROM image using the following program:
  317.   
  318.            #include <stdio.h>
  319.        
  320.            #define kickorig 0xf80000   /*  0xfc0000 for Kick 1.2 und 1.3   */
  321.            #define kicklen  0x080000   /*  0x040000 for Kick 1.2 und 1.3   */
  322.        
  323.            void main(int argc, char*argv[])
  324.            {
  325.                FILE *fh;
  326.        
  327.                if ((fh = fopen("kickstart.file", "w"))  !=  NULL) {
  328.                    result = fwrite(kickorig, kicklen, 1, fh);
  329.                }
  330.                fclose(fh);
  331.            }
  332.   
  333.   2.2 The Graphical User Interface
  334.   ================================
  335.   
  336.      Die standardmΣ▀ig mitgelieferte OberflΣche "Workbench" ist nur die
  337.   Grundlage zum Aufbau einer guten, angenehmen OberflΣche.
  338.   
  339.      Zu diesem Zweck gibt es zahlreiche Tools, die den Anwendern das
  340.   Leben erleichtern.  Einige von diesem findet man auf dem Aminet in den
  341.   Verzeichnissen `util/#?/'.
  342.   
  343.   2.3 What is MUI?
  344.   ================
  345.   
  346.      MUI is a set of shared libraries which are used to build a
  347.   comfortable GUI (`Graphical user interface'). The general idea of MUI
  348.   is that the programmer determines only the logical structure of the GUI
  349.   and the look (Font, Size, Windows on Workbench, Public Screen, own
  350.   Screen, ...) is determined by the user only. From the programmers point
  351.   of view using MUI is simpler than `gadtools.library' but much more
  352.   powerful. On the other hand MUI interfaces are slower than
  353.   GadTools-Interfaces, especially on old 68000 machines.
  354.   
  355.      MUI is found in two archives, one for developers only and one for
  356.   users. Source: Aminet, `dev/misc'.
  357.   
  358.   2.3.1 Icon collections and Backgrounds
  359.   --------------------------------------
  360.   
  361.      The standard icons aren't beautiful, indeed.  But there do exist
  362.   some beautiful icon collections.  I know of `MagicWB' and `NewIcons'.
  363.   
  364.      `MagicWB' is Shareware. The icons are drawn beautiful in pastel with
  365.   every known trick. You also get a lot of good backgrounds which
  366.   beautify workbench windows and MUI programs.  Fine and good readable
  367.   fonts replace the clumsy topaz8 font.  You also get good icons for the
  368.   ToolManager.  You can find a test version of MagicWB on Aminet.
  369.   
  370.      `NewIcons' is Freeware. The icons do have relative intensive colors
  371.   and are drawn as three dimensional objects floating slanted in space.
  372.   You can find NewIcons on Aminet, `util/wb/NewIcons.lha'.
  373.   
  374.   *F:*
  375.        How do I turn off the "Gag" of MagicWorkbench (the intro which
  376.        appears sometimes during booting)?
  377.   
  378.   *A:*
  379.        In S: should be a file called `mti.data'. Delete it.
  380.   
  381.   *F:*
  382.        How can I create NewIcons?
  383.   
  384.   *A:*
  385.        The author of NewIcon currently works on an IconEd. Until then,
  386.        Iconian 2.9x (I3) is the only way to create NewIcons.
  387.   
  388.   *F:*
  389.        How can I prevent MagicWorkbench Icons to appear in incorrect
  390.        colors?
  391.   
  392.   *A:*
  393.        Register MagicWB 2.0, it contains a tool which patches the palette,
  394.        or get one of the different tools from Aminet.
  395.   
  396.   *MagicColors*
  397.   *ShoveColors*
  398.        Its a good program, you can find it in Iconian, PictIcon or
  399.        `Aminet:util/wb/').
  400.   
  401.   2.4 What is the Amiga equivalent of . (Current directory)?
  402.   ==========================================================
  403.   
  404.      The AmigaDOS equivalent for the . representing the current directory
  405.   on Unix and certain non-reentrant interrupt handlers is the empty
  406.   string, which is written as "".
  407.   
  408.      Example:
  409.            COPY S:Startup-Sequence ""
  410.   
  411.   copies your Startup-Sequence to the current directory.
  412.   
  413.      There is some FD software available to patch a Unix-like
  414.   interpretation of . and .. into the AmigaDOS, including, but not
  415.   limited to, Martin Scott's UnixDirs. (Aminet,
  416.   `os20/util/UnixDirsII.lha' or Fish-disk 837)
  417.   
  418.      Arno Eigenwillig (arno@yaps.dinoco.de)
  419.   
  420.   2.5 The PIPE: queue-handler
  421.   ===========================
  422.   
  423.      In the AmigaOS release 2.04, a new handler for passing data between
  424.   programs was introduced. This handler is called `L:Queue-Handler',
  425.   better known as the `PIPE:' device.
  426.   
  427.      `PIPE:' implements a true `pipe' familiar from UNIX systems.  Its
  428.   function is to pass the output of one program to another program as
  429.   input. You can chain several programs together using multiple pipes.
  430.   
  431.      The advantages of using pipes are:
  432.     1. No need for a lot of RAM to keep the temporary files, or, no need
  433.        to slow things down by storing temporary files on the HD.
  434.   
  435.     2. Faster operation since the intermediate data doesn't need to be
  436.        stored anywhere between programs.
  437.   
  438.      The `PIPE:' device differs from the UNIX pipes in two important
  439.   respects:
  440.     1. It is a device, so the input and output of the programs doesn't
  441.        need to be a redirected standard output, although that is the
  442.        general case. You can also use `PIPE:' instead of files, with two
  443.        restrictions; you can not read a directory from `PIPE:', and the
  444.        `PIPE:' `file' can not be `seeked' in.
  445.   
  446.     2. It does not support a flush operation. If all of the data written
  447.        in a `PIPE:' device is not read out, it will stay there, buffered.
  448.        Thus you must always `empty' a pipe before closing it.
  449.   
  450.     3. Because of the above, if unread data exceeds the size of the
  451.        `PIPE:' internal buffer, the program writing to the pipe will
  452.        `block' (that is, suspend operation) until the data is read. See
  453.        below on how to manually flush a pipe.
  454.   
  455.      The PIPE: handler name syntax is `PIPE:name/bufsize/bufnum', where
  456.   `name' is the name for the pipe channel. Using names you can have
  457.   several simultaneous pipe operations. The optional arguments
  458.   `bufsize'and `bufnum' specify the size and number of the buffers used
  459.   by `PIPE:'. Normally, you would just use `PIPE:name'.
  460.   
  461.      The default buffer size of `PIPE:' is 4096 bytes, and the number of
  462.   buffers (ie. channels) is unlimited.
  463.   
  464.      Osma Ahvenlampi (Osma.Ahvenlampi@hut.fi)
  465.   
  466.   2.5.1 Using PIPE: in a standard AmigaShell environment
  467.   ------------------------------------------------------
  468.   
  469.      First, make sure `PIPE:' is mounted. You can do this by giving the
  470.   command
  471.            1> Mount PIPE:
  472.   
  473.   in a Shell window. On an AmigaOS 2.1+ system, `PIPE:' is normally
  474.   mounted on startup by placing the mount entry file `PIPE' in the drawer
  475.   `DEVS:DosDrivers'.
  476.   
  477.      In an AmigaShell window, give the commands:
  478.            1> Run List SYS: >PIPE:Listoutput
  479.            1> More <PIPE:Listoutput
  480.   
  481.   (1)
  482.   
  483.      These two commands list the contents of the `SYS:' volume to a pipe
  484.   and then type it in the Shell window. You could also use:
  485.            1> Run List SYS: NOHEAD >PIPE:Listoutput
  486.            1> Run Sort PIPE:Listoutput PIPE:Sortedoutput
  487.            1> More <PIPE:Sortedoutput
  488.   
  489.   Notice that you need to `Run' all the programs except for the last one.
  490.   This is so that you can get them all running simultaneously. You could
  491.   also use several Shell windows, or any other way of running all the
  492.   programs at the same time. Also this might not work if `More' isn't the
  493.   standard Commodore AmigaOS 2.04+ More found in `SYS:Utilities'.
  494.   
  495.      In case you need to manually flush a pipe, for example because the
  496.   program that was reading from it aborts prematurely, it can be done
  497.   with the command:
  498.            1> Type PIPE:name TO NIL:
  499.   
  500.      ---------- Footnotes ----------
  501.   
  502.      (1)  Note that `1>' is the prompt AmigaShell gives when it is
  503.   waiting for a command. The number varies, and the prompt can be
  504.   customised to look completely different. It is not a part of the
  505.   command.
  506.   
  507.   2.5.2 The Pipe command
  508.   ----------------------
  509.   
  510.      As you can see, this is a somewhat difficult way of using pipes,
  511.   needing a lot of typing especially compared to the UNIX pipes. There is
  512.   a solution for that.
  513.   
  514.      Andy Finkel, a former Commodore software engineer wrote a command
  515.   called `Pipe' (not to be confused with `PIPE:') that simplifies the use
  516.   of the `PIPE:' device. Unfortunately, this command did not make it into
  517.   the 2.04 release. However, Commodore has given the permission to
  518.   distribute this, and a few other commands, freely. (Sources: Fish disk
  519.   673, Aminet, `util/cli/finkelshelltools.lha')
  520.   
  521.      For some reason Commodore did not include these commands in the later
  522.   OS releases, although they work fine even with OS 3.1 (V40). Thus all
  523.   users are required to get them from the above sources if they wish to
  524.   use them.
  525.   
  526.      The Pipe command usage is simple. The commands to be run with their
  527.   inputs and outputs piped together are given as arguments to the
  528.   command, separated by the | (vertical bar) character:
  529.   
  530.            1> Pipe List SYS: | More
  531.                or
  532.            1> Pipe List: SYS: NOHEAD | Sort IN: OUT: | More
  533.   
  534.   Notice how Sort needs `IN:' and `OUT:'. These devices don't actually
  535.   exist, but the Pipe command simulates them with the PIPE:. This is
  536.   necessary because C:Sort can not use the `standard IO', but insists on
  537.   files.
  538.   
  539.      The separator character | can be configured to be something else
  540.   with the local variable __PCHAR.
  541.   
  542.   2.5.3 Pipe command support in AmigaShell
  543.   ----------------------------------------
  544.   
  545.      There is a little known and quite useful undocumented feature built
  546.   in the 2.04+ AmigaShell, that is, AmigaShell knows about the `Pipe'
  547.   command. By setting the local variable _PCHAR, you can use pipes
  548.   without even entering the Pipe command. AmigaShell will prepend it on
  549.   the command line automatically if it sees the pipe separator command
  550.   specified by _pchar on the command line.
  551.   
  552.      Thus, after the command:
  553.            1> Set _pchar "|"
  554.   
  555.   (1)
  556.   
  557.      the above examples can be used like this:
  558.            1> List SYS: | More
  559.                or
  560.            1> List SYS: NOHEAD | Sort IN: OUT: | More
  561.   
  562.      Those familiar with the UNIX pipes will notice how the usage is very
  563.   similar to the UNIX pipe usage.
  564.   
  565.      ---------- Footnotes ----------
  566.   
  567.      (1)  The quotes around the vertical bar are important, to avoid
  568.   AmigaShell interpreting the command as an attempt to use PIPE:, if
  569.   _PCHAR is already set (for example if the Shell is started from within
  570.   another one).
  571.   
  572.   2.5.4 Quick usage guide
  573.   -----------------------
  574.   
  575.     1. Get the ShellTools archive from the Fish disk 673, or from Aminet,
  576.        `util/cli/hacks204.lha'.
  577.   
  578.     2. Install the commands in this archive in your Shell search path,
  579.        preferably C:.
  580.   
  581.     3. Put the command `Set _pchar |' in your `S:Shell-Startup' file.
  582.   
  583.     4. Restart your AmigaShell so that it reads the `S:Shell-Startup'.
  584.   
  585.     5. Try `List SYS: | More'
  586.   
  587.     6. Read the ShellTools documentation and experiment.
  588.   
  589.   2.5.5 Related things
  590.   --------------------
  591.   
  592.      The variable _mchar is used to separate one command from another in
  593.   a shell line.  So, after the command:
  594.            1> Set _mchar ";"
  595.      you can put more shell commands into the same line, separated from
  596.   each other by `;'.
  597.   
  598.   2.5.6 Troubleshooting
  599.   ---------------------
  600.   
  601.   *Q:*
  602.        When I try the command `List SYS: | More' I get an error
  603.                 PIPE: Unknown command
  604.   
  605.        I have `PIPE:' mounted, what's wrong?
  606.   
  607.   *A:*
  608.        AmigaShell is referring to the command `Pipe' in the error, not the
  609.        `PIPE:' device. You haven't installed the commands in the
  610.        ShellTools archive.
  611.   
  612.   *Q:*
  613.        I get a requester that says
  614.                 Please insert volume PIPE: in any drive
  615.   
  616.        when I try any of the command examples.
  617.   
  618.   *A:*
  619.        `PIPE:' is not mounted. Try `Mount PIPE:'. If that doesn't work,
  620.        refer to your AmigaDOS manual or a friend that knows how to mount
  621.        devices.
  622.   
  623.   *Q:*
  624.        When I try any of the examples the More window pops up but nothing
  625.        is shown/I get an error afterwards/More pops up a file requester.
  626.   
  627.   *A:*
  628.        You are not using the standard AmigaOS `More' command. Either use
  629.        another name or install a command that supports pipes.
  630.        Possibilities are the C= More, Less, or Most for example.
  631.   
  632.   *Q:*
  633.        With use of PIPE:, sometimes characters get lost. What happened?
  634.   
  635.   *A:*
  636.        Up to OS 3.1, the queue-handler has some bugs which don't allow a
  637.        really foolproof transmission of data.  A compatible replacement
  638.        for the queue-handler can be founbd on Aminet,
  639.        `util/sys/HWGQueue.lha'.
  640.   
  641.   *Q:*
  642.        None of these happen but it still doesn't work as you described.
  643.   
  644.   *A:*
  645.        Are you using OS 2.04 later? Are you using the standard AmigaShell?
  646.        Try with all extras disabled.
  647.   
  648.   2.6 ARexx, the program control language
  649.   =======================================
  650.   
  651.   *Q:*
  652.        I want to send an ARexx command through CLI or through a shell
  653.        script, but that (rx ADDRESS PORTNAME;COMMAND) doesnt work.
  654.   
  655.   *A:*
  656.        You have to put quotation marks. (rx "ADDRESS PORTNAME;COMMAND").
  657.        It also prevents upcasing the portname when it should be lowercase.
  658.   
  659.   3 How about Graphics?
  660.   *********************
  661.   
  662.      Graphics is one of the major strengths of the Amiga. Why don't we
  663.   have more answers here? :-(
  664.   
  665.   3.1 What are chunky and planar displays?
  666.   ========================================
  667.   
  668.      Simply put, the terms `chunky' and `planar' (short for `bitplanar')
  669.   refer to different ways of storing graphics information in a computer's
  670.   memory. They are rather easy to understand, as far as things go, but
  671.   incredibly difficult to explain:
  672.   
  673.      Computer images are arranged as a grid of pixels, each of which can
  674.   be thought of as a number representing the color number of the pixel,
  675.   sort of like a paint-by-numbers scheme.  For example, here's a
  676.   simplified example image, in four colors:
  677.   
  678.           00302132
  679.   
  680.      The Amiga stores this image in a `bitplane' mode. That is, it is
  681.   represented by several planes of bits (binary digits, 1s or 0s). This
  682.   is a four-color image, so each color number could be represented by two
  683.   bits.  Therefore there are two bitplanes:
  684.   
  685.           00100110    Here's bitplane 0
  686.           00101011    And here's bitplane 1
  687.           --------    Now, let's add them up, binary style:
  688.           00302132
  689.   
  690.      Which is the final image. If the image was in two dimensions, it
  691.   would truly be composed of bit planes. However, I'd need three
  692.   dimensions to show multiple bitplanes overlayed, and therefore for
  693.   simplicity we're working in one dimension (which is all we need).
  694.   
  695.      Now, there's another way of storing this image.  How about if we
  696.   localize the bit data in little chunks?
  697.   
  698.           00 00 11 00 01 10 11 01 = 00302132
  699.   
  700.      This is the principle of the `chunky' pixel mode.
  701.   
  702.      Both methods of image storage are perfectly logical, and no one can
  703.   say that one is better than the other. However, there are certain
  704.   technical aspects which cause certain advantages and disadvantages.
  705.   
  706.      First, if you've seen colored text scroll on your Amiga, you know
  707.   there is a bit of "flicker" that arises. Specifically, what happens is
  708.   that while the text is scrolling, its color temporarily changes to
  709.   something completely different. What's happening is that the computer's
  710.   moving several bitplanes of data while the raster (monitor electron
  711.   gun) is sweeping across the screen. What that means is that, if the
  712.   raster catches the data while it's being moved, you can end up with some
  713.   bitplanes being moved and some not. What if we filled bitplane 1 in the
  714.   example above with 0s? Instantly all the 3s become 1s, and the 2s
  715.   become 0s! This is what causes "flicker" when certain colors are
  716.   scrolled. By contrast, if a chunky pixel display is caught while
  717.   scrolling, all we see is a partially-scrolled image; the colors are
  718.   preserved (since their units are the small ones).
  719.   
  720.      That's a disadvantage to planar pixels, but what about chunky pixels?
  721.   Well, recall that a computer organizes information in terms of 8 bit
  722.   bytes. These groups are static; you cannot decide to all of a sudden
  723.   organize data in terms of three bytes or something! Therefore, when
  724.   using chunky pixels, things get complicated if we decide to use a
  725.   nonconvenient number of bits per pixel. In practice, the 8-bit
  726.   (256-color) mode, and 24-bit (16 million color) modes are the most
  727.   common candidates for chunky pixel displays.
  728.   
  729.      Finally, certain effects can be accomplished with the different
  730.   systems.  Bitplanar mode is particularly useful for things like shadows
  731.   (where an extra bitplane is set with 1s instead of 0s), and chunky mode
  732.   is great for perspective and "mapping" (since the data for each pixel is
  733.   localized in a single "chunk"). The latter advantage makes chunky pixel
  734.   mode really great for games, and is what made Wolfenstein 3-D possible.
  735.   
  736.      We all know that Amigas use the bitplane system for storing images.
  737.   However, the Macintosh and PC(VGA) both use chunky pixel modes. While
  738.   we can optimize our RAM usage with "bizarre" modes like 8- and
  739.   128-color, they gain the advantages of non-flicker scrolling, and the
  740.   programming simplicity of just writing a byte where you want the pixel
  741.   to go.
  742.   
  743.      The difference between the two modes becomes problematic in things
  744.   like emulation. EMPLANT has a "chunky to planar" routine which it uses
  745.   to convert a Macintosh display into an Amiga one. "Chunky to planar"
  746.   routines are also useful for getting chunky-inclined things to run on
  747.   Amigas (see TMAPDemo, rotdemo). On a side note, there was some
  748.   confusion as to what EMPLANT used the MMU for with regard to chunky to
  749.   planar. The MMU itself is incapable of performing the algorithm for the
  750.   conversion; rather, it is used to detect what portions of the display
  751.   memory are updated from the Mac side, and therefore the processor is
  752.   saved from having to perform the chunky to planar conversion for the
  753.   entire display.
  754.   
  755.      I sincerely hope that helped clear up most of the mystery concerning
  756.   the terms "Chunky" and "Planar"!
  757.   
  758.      (Joseph Luk, jluc@eis.calstate.edu)
  759.   
  760.   3.2 What is doublebuffering?
  761.   ============================
  762.   
  763.      Don't be ashamed if you haven't a clue as to what this is. It's
  764.   rather simple, really. Imagine you wanted to animate something by
  765.   drawing out each frame. Now imagine you had only one piece of paper.
  766.   Even if you drew pretty fast, it would be difficult to see what the
  767.   animation looks like because you'd have to erase the frame you just
  768.   drew, in order to draw the next one!
  769.   
  770.      What if you had two pieces of paper? Why, then, you could see the
  771.   difference between two adjacent frames. First you'd draw your first
  772.   frame on the first piece of paper, then you'd draw the second frame on
  773.   the other piece.  Then you'd erase the picture on the first piece of
  774.   paper, and draw in the third frame. Then you'd erase the picture on the
  775.   second piece of paper, and draw in the fourth frame, and so forth.
  776.   
  777.      This is the principle of doublebuffering. The computer shows you the
  778.   picture it just drew, then turns around and draws the next one. It then
  779.   swaps the picture in front of you with the one it just drew, and
  780.   repeats the process. The result is a smooth animation, because you
  781.   never need to see the computer draw; all you see is each finished
  782.   product.
  783.   
  784.      (Joseph Luk, jluc@eis.calstate.edu)
  785.   
  786.   3.3 What monitors will work on my Amiga 1200/4000?
  787.   ==================================================
  788.   
  789.      Monitors can be classified after the horizontal scan frequency they
  790.   require.  TVs, as well as C='s 1084 monitor, need frequencies around 15
  791.   kHz. VGA/SVGA need approx. 30 kHz. Multisync monitors can take many
  792.   frequencies.
  793.   
  794.      In short: You can use any monitor you want with an A1200. BUT:
  795.   
  796.      - If you use a regular VGA/SVGA monitor, you can only use a few
  797.        display modes (like DblPAL, DblNTSC and/or Productivity). I.e.
  798.        (320|640) x (256|512|1024) for DblPAL. This is great for Workbench
  799.        and all "serious" utilities (DTP etc), but don't expect any games
  800.        to work... they don't use your preferences, just take over the
  801.        machine and assume a 15 kHz monitor. Also, you cannot utilize the
  802.        "Early Startup Control" screen (you know, disable cache, and that
  803.        stuff), which also requires a 15 kHz monitor. Furthermore, VGA
  804.        monitors don't have speakers. And the VGA-type modes don't support
  805.        Genlocks. But for a lot of "serious" work, a VGA monitor is quite
  806.        adequate.
  807.   
  808.      - You already know what happens with a 15 kHz monitor; the
  809.        flickering in Interlace mode. A small tip: Try to use NTSC instead
  810.        of PAL. This increases the refresh rate from 25 Hz to 30 Hz, at
  811.        the expense of lower vertical resolution (482 lines maximum). The
  812.        NTSC and PAL modes aren't as bad as many people think. If your
  813.        monitor has a lot of phosphorous (long afterglow), PAL Laced can
  814.        be quite OK, and it gives you a resolution of 1448x566 in
  815.        SuperHiRes. That's the highest resolution currently supported on
  816.        AGA Amigas, in _any_ display mode.
  817.   
  818.      - A Multisync gives you the best of both worlds. The 1940 and 1942
  819.        monitors from C= are quite OK, although rather cumbersome to
  820.        use... The h/v size and offset must be set manually each time you
  821.        switch display mode.  (1) The 1960 monitor doesn't have this
  822.        problem, but it's a bit more expensive.
  823.   
  824.      For a VGA/SVGA or Multisync monitor, you'd need a little shiny box
  825.   which gives you the standard 15-pin "D" connector. It costs around $15.
  826.   
  827.      There are other alternatives... like the "AmiVGA" box ($50 or so),
  828.   which I think is a cheapo version of the Flicker Fixer. (But it's
  829.   really a shame to use this on an AGA Amiga.)
  830.   
  831.      Also, you can get a VGA monitor, and hook up your TV to the
  832.   composite or RF port on the Amiga - one monitor for games, one for
  833.   serious stuff.
  834.   
  835.      (Per Espen Hagen, per.e.hagen@ffi.no)
  836.   
  837.      ---------- Footnotes ----------
  838.   
  839.      (1)  A patch is available on Aminet for Kickstart 3.0 to do this
  840.   without manual actions in the file `os30/util/Monitor30Patch.lha'.
  841.   
  842.   3.4 How do I switch between PAL and NTSC?
  843.   =========================================
  844.   
  845.      PAL and NTSC are two different video standards, the former being
  846.   European, and the latter being American. PAL has a slightly taller
  847.   screen (256 lines non-interlaced, non-overscanned) as opposed to NTSC
  848.   (200 lines), so if you see the bottom portion of a program's screen
  849.   getting cut off on your American machine, chances are the program was
  850.   written for PAL, and is running on your shorter NTSC screen. PAL and
  851.   NTSC differences are somewhat less important to European users; since
  852.   their machines default to PAL, running an NTSC program is no more than
  853.   a minor annoyance having the screen only appear in the top portion of
  854.   the display.
  855.   
  856.      Therefore, for us NTSC folks, switching into PAL mode becomes
  857.   important to avoid loss of some picture on Euro Demos, etc.
  858.   
  859.      First, the most common misconception about switching between PAL and
  860.   NTSC is that you need a Multiscan or special monitor for such a purpose.
  861.   Not so! Just about any monitor can handle the minor signal difference
  862.   between PAL and NTSC (50Hz vertical refresh versus 60Hz). The 108x,
  863.   19xx, and 20xx series, and even most TVs, can display both PAL and NTSC.
  864.   Sometimes it is necessary to perform minor tweaking of vertical hold
  865.   and/or v. size on your monitor to achieve full display, though this is
  866.   trivial.
  867.   
  868.      What IS needed to switch between PAL and NTSC in software, is a
  869.   "Fatter" (1MB) Agnus or better. If your system has more than 512K of
  870.   CHIP RAM (use the avail command to find out) you have this chip. If you
  871.   do not, ou can still construct a hardware switch (see below).
  872.   
  873.      The following directions assume you're an NTSC user who wants to
  874.   switch into PAL mode, but the procedure for going from PAL to NTSC is
  875.   much the same.
  876.   
  877.      The most common use of switching into PAL is for self-booting games,
  878.   demos, etc.  The best way to accomplish this on pre-3.0 systems is to
  879.   use Chris Hames' Degrader program (most recent version: 1.30). Once you
  880.   have procured this program, the switch is as simple as selecting
  881.   "50Hz", and "50Hz System", then installing the program's ROMTag (little
  882.   program that runs at boot-time) by pressing the "Survive Reset(s)"
  883.   button.
  884.   
  885.      AmigaDOS 3.0 added a PAL/NTSC switch feature to its Boot Menu, and
  886.   all you need to do in order to access this is hold down both mouse
  887.   buttons as the computer boots. Select Display Options, Display
  888.   Mode/PAL, and then Boot. If the program still fails to go into PAL mode
  889.   (Zool is one I've found), you may wish to get Degrader anyway and try
  890.   that.
  891.   
  892.      Software PAL/NTSC switching is easy and painless. Some people have
  893.   gone even further by installing hardware PAL/NTSC switches. This
  894.   results in a system which even the most nasty hardware-banging programs
  895.   can't bring to its original configuration (if it has been switched).
  896.   The procedure is simple - most Amigas have jumpers already - but beyond
  897.   the scope of this document.
  898.   
  899.      Therefore, if your screen is too short or cut off, seek the different
  900.   screen mode. You'll "see new horizons", literally!
  901.   
  902.      (Joseph Luk, jluc@eis.calstate.edu)
  903.   
  904.      (1)
  905.   
  906.      ---------- Footnotes ----------
  907.   
  908.      (1)  PAL/NTSC switching with a MultiSync monitor is possible on 2.0+
  909.   and easily accomplished by moving the PAL monitor type to (or NTSC, as
  910.   applicable, I have them both in) the Devs/Monitors drawer (from the
  911.   Storage/Monitors drawer), reboot, then go into the Prefs drawer and
  912.   select the ScreenMode program. You will see at least two PAL modes
  913.   available (PAL and PAL Interlaced). Simply select one of the (usually
  914.   non-interlaced for demos) and select "Use". All windows on the Workbench
  915.   will close, the video mode will change, and then the windows will
  916.   reopen - that simple!
  917.   
  918.      Allen J. Newton, anewton@alturia.abq.nm.us
  919.   
  920.